package regex;
/*
   预定义字符类：
      . 任何字符（与行结束符可能匹配也可能不匹配）
      \d 数字：[0-9]
      \w 单词字符：[a-zA-Z_0-9]

 */
public class RegexDemo04 {
    public static void main(String[] args) {
        //method01();
        //method02();
        System.out.println("a".matches("\\w"));//true
        System.out.println("1".matches("\\w"));//true
        System.out.println("%".matches("\\w"));//false
    }

    private static void method02() {
        System.out.println("1".matches("\\d"));//true
        System.out.println("1".matches("[0-9]"));//true  这两个规则是一样的
        System.out.println("a".matches("[0-9]"));//false
        System.out.println("19".matches("\\d\\d"));//true
    }

    private static void method01() {
        System.out.println("a".matches("."));//true
        System.out.println("1".matches("."));//true
        System.out.println("*".matches("."));//true
        System.out.println("aa".matches("."));//false
        System.out.println(".".matches("\\."));//由于.字符在正则中代表特殊含义(匹配任意字符)，因此我们需要通过\进行转义
        //转义成普通字符，\在Java中也具有特殊含义，因此我们还需要再加一个\转义第二个\
        System.out.println("a".matches("\\."));//false  a不匹配.字符
    }
}
